package observer.ConcreteSubjec;

import observer.Observer.Credit;
import observer.subject.Debit;

import java.util.ArrayList;
import java.util.List;


/**
 * 具体目标类实现抽象目标类
 */
public class ZhangSan implements Debit {

    //贷款方不止一个人 定义一个集合来维护
    private List<Credit> allCredits = new ArrayList<>();

    //借钱方法
    @Override
    public void borrow(Credit credit) {
        allCredits.add(credit); //添加一个观察者对象
    }


    //还钱   遍历集合 通知每一个人
    @Override
    public void notifyCredits() {
        System.out.println("债主们来拿钱了！！");
        allCredits.forEach(Credit::takeMoney);
    }
}
